using Smart.Model;
using UnityEditorInternal;
using UnityEngine;
using UnityEngine.Events;

public static partial class Net
{
	public static void ECM_LoginResMessage(Account.LoginRes msg)
	{
		if(null == msg)
		{
			Log.Error("Deserialize Msg Failed ForAccount.LoginRes");
			return;
		}
	
		Debug.Log($"LoginResMessage x:{msg.X} y:{msg.Y} z:{msg.Z}");
		ActorManager.Instance.CreateMainPlayer(msg.Guid, msg.X, msg.Y, msg.Z);
		GameEntry.TimeManager.Init();
	}
	public static void ECM_MoveResMessage(Account.MoveRes msg)
	{
		if(null == msg)
		{
			Log.Error("Deserialize Msg Failed ForAccount.MoveRes");
			return;
		}
	}
	
	public static void ECM_AddTempObstacleResMessage(Account.AddTempObstacleRes msg)
	{
		if(null == msg)
		{
			Log.Error("Deserialize Msg Failed ForAccount.AddTempObstacleRes");
			return;
		}
	}
	public static void ECM_RemoveTempObstacleResMessage(Account.RemoveTempObstacleRes msg)
	{
		if(null == msg)
		{
			Log.Error("Deserialize Msg Failed ForAccount.RemoveTempObstacleRes");
			return;
		}
	}
	
	public static void ECM_TimeSynResMessage(Account.TimeSynRes msg)
	{
		if(null == msg) return;
		GameEntry.TimeManager.OnTimeSync(msg.Time);
	}
	
	public static void ECM_AgentPositionAdjustResMessage(Account.AgentPositionAdjustRes msg)
	{
		if(null == msg) return;
		ActorManager.Instance.ResetMainPosition(msg.X, msg.Y, msg.Z);
	}
}
